package com.moon.interview.sentinel;

public enum BlockMessageEnums {
    BLOCK_API("api", "系统压力过大，请耐心等待"),
    BLOCK_IP("ip", "访问过于频繁，请稍后再试");

    /** 限流类型 */
    private final String type;
    /** 限流提示信息 */
    private final String message;

    BlockMessageEnums(String type, String message) {
        this.type = type;
        this.message = message;
    }

    public String getType() {
        return type;
    }

    public String getMessage() {
        return message;
    }

    /**
     * 根据限流类型获取限流提示信息
     * @param type 限流类型
     * @return 限流提示信息
     */
    public static String getMessageByType(String type) {
        for (BlockMessageEnums value : values()) {
            if (value.getType().equals(type)) {
                return value.getMessage();
            }
        }
        return null;
    }
}
